package com.cloudkinto.bo.order.makeshop.getOrder;

import com.cloudkinto.annotate.GraphqlResultAttribute;
import lombok.Data;

import java.util.List;

/**
 * @author long
 * @Description 商品信息
 * @Date 2025/4/25 14:50
 */
@Data
public class BasketInfo {

    /**
     * 系统商品代码
     */
    @GraphqlResultAttribute
    private String productCode;

    /**
     * 专有商品代码
     */
    @GraphqlResultAttribute
    private String productCustomCode;

    /**
     * 产品种类独特代码
     */
    private String variationCustomCode;

    /**
     * 商品名称
     */
    @GraphqlResultAttribute
    private String productName;

    /**
     * 产品种类信息
     * <p>
     * 备选方案和选项组选择
     */
    private String variationName;

    /**
     * 备选方案1项目ID
     */
    private int variation1ItemId;

    /**
     * 备选方案2项目ID
     */
    private int variation2ItemId;

    /**
     * 选项组代码
     */
    private String optionCode;

    /**
     * 按商品分类的特殊表示
     */
    private String addcode;

    /**
     * 数量
     */
    @GraphqlResultAttribute
    private int amount;

    @GraphqlResultAttribute
    private int price;

    private int taxRate;

    /**
     * 商品赠送积分
     */
    @GraphqlResultAttribute
    private int grantedShopPoint;

    /**
     * 添加购物车的日期和时间 eg.20250424
     */
    private String addToCartDate;

    /**
     * 折扣百分比
     */
    private String discountRate;

    private String janCode;

    /**
     * 个性化信息
     */
    private List<ProductNameOptionInfo> productNameOptions;
}